Common Signals: SIGINT, SIGTERM, SIGKILL

Computer Science - ইন্টার প্রসেস কমিউনিকেশন (Inter Process Communication) Signals |
185
185

SIGINT, SIGTERM, এবং SIGKILL হল UNIX এবং UNIX-এর মতো অপারেটিং সিস্টেমগুলিতে ব্যবহৃত সাধারণ সংকেত। এই সংকেতগুলি প্রক্রিয়াগুলির মধ্যে যোগাযোগের জন্য ব্যবহৃত হয় এবং সাধারণত বিভিন্ন অবস্থায় প্রক্রিয়া পরিচালনার জন্য ব্যবহার করা হয়। নিচে এই তিনটি সংকেতের বিস্তারিত আলোচনা করা হলো:

১. SIGINT (Signal Interrupt)

সংকেত সংখ্যা: 2

বর্ণনা:

  • SIGINT সংকেতটি ব্যবহারকারীর দ্বারা প্রক্রিয়া বন্ধ করার জন্য পাঠানো হয়। সাধারণত এটি টার্মিনালে Ctrl+C চাপার মাধ্যমে প্রেরিত হয়।
  • এটি একটি চলমান প্রক্রিয়া বন্ধ করার জন্য ব্যবহার করা হয় এবং এটি প্রক্রিয়াটিকে পরিষ্কারভাবে বন্ধ করার সুযোগ দেয়, যেমন ফাইল বন্ধ করা বা রিসোর্স মুক্ত করা।

ডিফল্ট ক্রিয়া:

  • SIGINT এর জন্য ডিফল্ট ক্রিয়া হল প্রক্রিয়াটিকে বন্ধ করা। তবে, প্রক্রিয়া এই সংকেতকে কাস্টম সংকেত হ্যান্ডলার দ্বারা পরিচালনা করতে পারে, যা তাকে বন্ধ হওয়ার আগে কিছু কাজ করার সুযোগ দেয়।

ব্যবহার উদাহরণ:

  • যদি আপনি একটি দীর্ঘকালীন কাজ চলমান থাকাকালীন তা বন্ধ করতে চান, তাহলে Ctrl+C চাপার মাধ্যমে SIGINT সংকেত পাঠানো হয়।

২. SIGTERM (Signal Terminate)

সংকেত সংখ্যা: 15

বর্ণনা:

  • SIGTERM সংকেতটি একটি প্রক্রিয়াকে বন্ধ করার জন্য প্রেরিত হয়, এটি বন্ধের জন্য একটি অনুরোধ।
  • এটি প্রক্রিয়াটিকে পরিষ্কারভাবে বন্ধ করার সুযোগ দেয়, যেমন ফাইল বন্ধ করা এবং রিসোর্স মুক্ত করা।

ডিফল্ট ক্রিয়া:

  • SIGTERM এর জন্য ডিফল্ট ক্রিয়া হল প্রক্রিয়াটিকে বন্ধ করা। এই সংকেতটিও কাস্টম সংকেত হ্যান্ডলার দ্বারা পরিচালিত হতে পারে, যা প্রক্রিয়াটিকে বন্ধ হওয়ার আগে কিছু কাজ করার সুযোগ দেয়।

ব্যবহার উদাহরণ:

  • আপনি kill কমান্ড ব্যবহার করে একটি প্রক্রিয়াকে SIGTERM সংকেত পাঠাতে পারেন:
  • এখানে <pid> হল প্রক্রিয়ার আইডি।
kill <pid>

৩. SIGKILL (Signal Kill)

সংকেত সংখ্যা: 9

বর্ণনা:

  • SIGKILL সংকেতটি একটি প্রক্রিয়াকে অবিলম্বে এবং জোরপূর্বক বন্ধ করার জন্য ব্যবহৃত হয়।
  • এটি কোনওভাবে ধরা, ব্লক বা উপেক্ষা করা যায় না, অর্থাৎ প্রক্রিয়াটি এই সংকেতটি পাওয়ার পর অবিলম্বে বন্ধ হয়ে যাবে।

ডিফল্ট ক্রিয়া:

  • SIGKILL এর জন্য ডিফল্ট ক্রিয়া হল প্রক্রিয়াটিকে অবিলম্বে বন্ধ করা।

ব্যবহার উদাহরণ:

  • আপনি kill কমান্ড ব্যবহার করে একটি প্রক্রিয়াকে SIGKILL সংকেত পাঠাতে পারেন:
  • এই কমান্ডটি নির্দিষ্ট প্রক্রিয়া আইডি (pid) সহ প্রক্রিয়াটিকে জোরপূর্বক বন্ধ করে।
kill -9 <pid>

৪. পার্থক্য

সংকেতসংখ্যাবর্ণনাপরিচালনা করা যায়?ডিফল্ট ক্রিয়া
SIGINT2চলমান প্রক্রিয়াকে বিরত করার সংকেতহ্যাঁ (কাস্টম হ্যান্ডলার)প্রক্রিয়া বন্ধ করা
SIGTERM15প্রক্রিয়া বন্ধ করার অনুরোধহ্যাঁ (কাস্টম হ্যান্ডলার)প্রক্রিয়া বন্ধ করা
SIGKILL9প্রক্রিয়াকে অবিলম্বে বন্ধ করানাঅবিলম্বে প্রক্রিয়া বন্ধ

উপসংহার

SIGINT, SIGTERM, এবং SIGKILL হল প্রক্রিয়া পরিচালনার জন্য গুরুত্বপূর্ণ সংকেত। SIGINT এবং SIGTERM সাধারণত প্রক্রিয়া বন্ধ করতে ব্যবহৃত হয়, যেখানে SIGKILL অবিলম্বে এবং জোরপূর্বক বন্ধ করার জন্য ব্যবহৃত হয়। এই সংকেতগুলির সঠিক ব্যবহার প্রক্রিয়া পরিচালনা এবং কার্যকারিতা নিশ্চিত করতে সাহায্য করে।

Promotion